package cn.fws.meap.user.service;

import cn.fws.framework.web.contoller.JsonResponse;
import cn.fws.meap.user.entity.User;
import cn.fws.meap.user.vo.UserDetailsVo;
import cn.fws.meap.user.vo.UserReplyListVo;

import java.util.List;

/**
 * 个人用户 服务层
 * 
 * @author chenkh
 * @date 2019-03-07
 */
public interface IUserService {
	/**
     * 查询个人用户信息
     * 
     * @param id 个人用户ID
     * @return 个人用户信息
     */
	public User selectById(String id);

	/**
	 * 查询个人用户信息
	 * @param openid 小程序唯一表示OPENID
	 * @return 个人用户信息
	 */
	public User selectByOpenId(String openid);
	
	/**
     * 查询个人用户列表
     * 
     * @param user 个人用户信息
     * @return 个人用户集合
     */
	public List<User> selectList(User user);
	
	/**
     * 新增个人用户
     * 
     * @param user 个人用户信息
     * @return 结果
     */
	public JsonResponse insert(User user);
	
	/**
     * 修改个人用户
     * 
     * @param user 个人用户信息
     * @return 结果
     */
	public int update(User user);
		
	/**
     * 删除个人用户信息
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
	public int deleteByIds(String ids);

	/**
	 * 账户绑定
	 * @param openId
	 * @param isBindEnums
	 * @return
	 */
    int updateBind(String openId, String isBindEnums);

	/**
	 * 个人用户简介
	 * @param itOpenId
	 * @return
	 */
    UserDetailsVo selectUserInformation(String itOpenId);

	/**
	 * 个人文章问题，回复 回答
	 * @param openId
	 * @return
	 */
	List<UserReplyListVo> selectUserReplyList(String openId);

	/**
	 * 个人查询创作记录和回复
	 * @param openId
	 * @return
	 */
	List selectPostReplyList(String openId);

/*	*//**
	 * 测试保存
	 * @param user
	 *//*
	public void saveUser(User user);


	*//**
	 * 测试删除
	 * @param user
	 *//*
	public void deleteUser(String nickname);

	*//**
	 * 测试修改
	 * @param user
	 *//*
	public long updateUser(User user);

	*//**
	 * 测试查询
	 * @param user
	 *//*
	public User getUser(String NickName);*/
}
